#pragma once
#ifndef skyCanvas_h__
#define skyCanvas_h__
#include "./skyAdapter.h"
#ifdef _SYMBIAN
#include "./symbian/symCanvas.h"
#else
#include "./windows/winCanvas.h"
#endif

namespace Sky
{
	class Pict;
	class Canvas : public OSCanvas
	{
	public:
		enum Format
		{
			Format_none,
			Format_Default
		};
	public:
		TBool create(TInt w,TInt h,TInt Format_,TUint subFormat = Format_none);
		TVoid  Delete();
		TBool attachPicture();
		TVoid detachPicture();
		Pict* getPict(){return _pict;}
		const TSize  getSize();
	protected:
		Pict* _pict;
	};

	typedef RefPtr<Canvas> CanvasPtr;
}
#endif // skyCanvas_h__